Assisted verification of elementary functions

نویسندگان

  • Florent de Dinechin
  • Christoph Lauter
  • Guillaume Melquiond
چکیده

The implementation of a correctly rounded or interval elementary function needs to be proven carefully in the very last details. The proof requires a tight bound on the overall error of the implementation with respect to the mathematical function. Such work is function specific, concerns tens of lines of code for each function, and will usually be broken by the smallest change to the code (e.g. for maintenance or optimization purpose). Therefore, it is very tedious and error-prone if done by hand. This article discusses the use of the Gappa proof assistant in this context. Gappa has two main advantages over previous approaches: Its input format is very close to the actual C code to validate, and it automates error evaluation and propagation using interval arithmetic. Besides, it can be used to incrementally prove complex mathematical properties pertaining to the C code. Yet it does not require any specific knowledge about automatic theorem proving, and thus is accessible to a wider community. Moreover, Gappa may generate a formal proof of the results that can be checked independently by a lower-level proof assistant like Coq, hence providing an even higher confidence in the certification of the numerical code. Key-words: proof assistant, floating-point, elementary functions, numerical code This text is also available as a research report of the Laboratoire de l’Informatique du Parallélisme http://www.ens-lyon.fr/LIP. Vérification assistée de fonctions élémentaires Résumé : L’implantation d’une fonction élémentaire avec arrondi correct ou d’une fonction élémentaire d’intervalle doit être prouvée dans les moindres détails. La preuve nécessite le calcul d’une borne fine sur l’erreur totale entre l’implémentation et la fonction mathématique exacte. Ce genre de travail est particulier à chaque fonction, concerne des dizaines de lignes de code, et risque d’être réduit à néant par une modification subséquente du code, pour raison de maintenance ou d’optimisation. Pour ces raisons, ce travail est très fastidieux et sujet à erreur s’il est effectué à la main. Cet article discute l’utilisation dans ce contexte de l’outil d’assistance à la preuve Gappa. Cet outil a deux avantages principaux sur les approches précédentes: sa syntaxe d’entrée est très proche de celle du code C à valider, et le calcul et la propagation des bornes d’erreurs sont automatisés autant que possible au moyen d’arithmétique d’intervalle. De plus, on peut l’utiliser de manière incrémentale pour prouver des propriétés complexes du code. Pourtant, l’outil ne nécessite pas de connaissances préalables en théorie de la démonstration, et est donc accessible à un public large. Enfin, Gappa produit une preuve formelle de ses résultats, preuve qui peut être vérifiée par des outils de preuve de plus bas niveau tels que Coq, pour encore plus de confiance dans la certification du code numérique. Mots-clés : assistant de preuve, virgule flottante, fonctions élémentaires, code numérique Assisted verification of elementary functions 3

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Effect of Computer-assisted Neurocognitive Rehabilitation on Inhibitory Control of the Students With Dyscalculia

Objectives: Cognitive functions are the most important factors that influence the performances of students with dyscalculia. This study investigates the effect of computer-assisted neurocognitive rehabilitation on the inhibitory control of students with dyscalculia.  Methods: A quasi-experimental pretest-posttest design was applied in this research. Thirty elementary students with dyscalc...

متن کامل

Characterizing sub-topical functions

In this paper, we first give a characterization of sub-topical functions with respect to their lower level sets and epigraph. Next, by using two different classes of elementary functions, we present a characterization of sub-topical functions with respect to their polar functions, and investigate the relation between polar functions and support sets of this class of functions. Finally, we obtai...

متن کامل

Some properties of the parametric relative operator entropy

The notion of entropy was introduced by Clausius in 1850, and some of the main steps towards the consolidation of the concept were taken by Boltzmann and Gibbs. Since then several extensions and reformulations have been developed in various disciplines with motivations and applications in different subjects, such as statistical mechanics, information theory, and dynamical systems. Fujii and Kam...

متن کامل

Verification and Validation of Common Derivative Terms Approximation in Meshfree Numerical Scheme

In order to improve the approximation of spatial derivatives without meshes, a set of meshfree numerical schemes for derivative terms is developed, which is compatible with the coordinates of Cartesian, cylindrical, and spherical. Based on the comparisons between numerical and theoretical solutions, errors and convergences are assessed by a posteriori method, which shows that the approximations...

متن کامل

Verification of an Evolutionary-based Wavelet Neural Network Model for Nonlinear Function Approximation

Nonlinear function approximation is one of the most important tasks in system analysis and identification. Several models have been presented to achieve an accurate approximation on nonlinear mathematics functions. However, the majority of the models are specific to certain problems and systems. In this paper, an evolutionary-based wavelet neural network model is proposed for structure definiti...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2005